gint idx)
{
GtkLabelPrivate *priv = label->priv;
- gint i;
- GList *l;
- GtkLabelLink *link;
if (priv->select_info)
- for (l = priv->select_info->links, i = 0; l; l = l->next, i++)
- {
- if (i == idx)
- {
- link = l->data;
- return link->uri;
- }
- }
+ {
+ GtkLabelLink *link = g_list_nth_data (priv->select_info->links, idx);
+ if (link)
+ return link->uri;
+ }
return NULL;
}
}
void
-_gtk_label_activate_link (GtkLabel *label,
+_gtk_label_activate_link (GtkLabel *label,
gint idx)
{
GtkLabelPrivate *priv = label->priv;
- gint i;
- GList *l;
- GtkLabelLink *link;
if (priv->select_info)
- for (l = priv->select_info->links, i = 0; l; l = l->next, i++)
- {
- if (i == idx)
- {
- link = l->data;
- emit_activate_link (label, link);
- return;
- }
- }
+ {
+ GtkLabelLink *link = g_list_nth_data (priv->select_info->links, idx);
+
+ if (link)
+ emit_activate_link (label, link);
+ }
}
gboolean
gint idx)
{
GtkLabelPrivate *priv = label->priv;
- gint i;
- GList *l;
- GtkLabelLink *link;
if (priv->select_info)
- for (l = priv->select_info->links, i = 0; l; l = l->next, i++)
- {
- if (i == idx)
- {
- link = l->data;
- return link->visited;
- }
- }
+ {
+ GtkLabelLink *link = g_list_nth_data (priv->select_info->links, idx);
+ return link ? link->visited : FALSE;
+ }
return FALSE;
}